package com.hskn.hss.module.role.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.hskn.hss.module.operatedauthor.entity.SysRoleMenu;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * <p>
 *
 * </p>
 *
 * @author hskn
 * @since 2020-11-16
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("sys_role")
public class SysRole implements Serializable {

    private String id;
    @TableField(exist = false)
    private String ids;
    //若没有开启驼峰命名，或者表中列名不符合驼峰规则，可通过该注解指定数据库表中的列名，exist标明数据表中有没有对应列
    @TableField(value = "roleName")
    private String roleName; //角色名称

    @TableField(value = "roleCode")
    private String roleCode; //角色编码

    @TableField(value = "createBy")
    private String createBy;//描述

    @TableField(value = "createTime")
    private Date createTime;

    @TableField(value = "updatBy")
    private String updatBy;

    @TableField(value = "updateTime")
    private Date updateTime;

    @TableField(value = "status")
    private String status;

    @TableField(exist = false)
    private String permissionRoleId;

    @TableField(exist = false)
    private String deptvalues;
    private String description;

    @TableField(exist = false)
    private List<SysRoleMenu> sysRoleMenu;

    @TableField(exist = false)
    private Integer bindUserCount;
    /**
     * 数据权限标识符
     *       1,
     *       '个人',
     *       '只能操作自己的数据(指派、抄送、上报等)'
     *     
     *      2,
     *       '所属机构',
     *       '能操作自己直属机构的数据'
     *     
     *      3,
     *       '所属机构及下属机构',
     *       '直属机构及下属机构'
     *     
     *      5,
     *       '全系统',
     *       '能操作全系统的数据'
     *     
     *      4,
     *       '自定义配置',
     *       '自己配置角色可操作的数据权限'
     */
    private String dataScope;
    /**
     * 1:管理员，2：用户
     */
    private Integer roleType;
    /**
     * 可登录平台，1web，2app，0全部
     */
    private Integer platform;


}
